Skip to content

Conversation

sergejparity
Copy link
Contributor

This PR brings following optimizations to the CI:

  1. Caching GHA's Swatinem/rust-cache was not configured properly therefore caching did not happen. This PR fixes it.
  2. cargo-contract installation step also didn't use preferences of caching. Optimization in this PR leads to reduction of this step execution time from ~20min to just few seconds.
  3. Parallelises execution of the contracts examples build and tests which doubles workflow execution speed from ~3h to ~1.5h in case when cache is not yet created. And gives x6 speed boost when cache already in place
  4. Replaced expensive ubuntu_20_64_core runners with ubuntu-latest, keeping execution time at the same level (build and test against Ubuntu when cache is populated is 15-16min) and slightly slower without cache (25-30min). Related to https://github.com/paritytech/ci_cd/issues/553
  5. Tuned path-ignore lists to not trigger CI if files like README.md and so on changed.

Comment on lines +34 to +61
- basic-contract-caller
- call-runtime
- conditional-compilation
- contract-terminate
- custom-allocator
- custom-environment
- dns
- e2e-call-runtime
- erc20
- erc721
- erc1155
- flipper
- incrementer
- multi-contract-caller
- multi-contract-caller/accumulator
- multi-contract-caller/adder
- multi-contract-caller/subber
- multisig
- payment-channel
- psp22-extension
- rand-extension
- trait-dyn-cross-contract-calls
- trait-erc20
- trait-flipper
- trait-incrementer
- upgradeable-contracts/delegator
- upgradeable-contracts/set-code-hash
- vesting
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only annoying thing here is that we have to remember to update this list when adding/removing examples.

In ink I have this script to solve that, although wouldn't be usable in this case because it may not work on OSX and obviously not on Windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants